<?php
/**
 * @copyright © 2022 by 技术先锋 All rights reserved
 * @created   by PhpStorm.
 * @author    starsphp
 * @date      2023/3/23
 * @time      17:00
 */


// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006-2019 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------

// [ 应用入口文件 ]
namespace think;

// 自动加载类
require __DIR__ . '/vendor/autoload.php';
//
// global $app;
//
// // 初始化应用
// $app = new App();
//
// // 加载变量环境 .env 文件
// $app->loadEnv();
//
// // 获取 变量配置文件 后缀  在 .env 文件中，
// // 若没有 ENV_NAME 配置值 则默认后缀为 default  （.env.default）
// $envName = \think\facade\Env::get('ENV_NAME', 'default');
//
// // 设置环境变量配置文件 动态
// $app->setEnvName($envName);

// 设置环境变量配置文件 静态
// $app->setEnvName('default');        // * 默认环境  .env.default
// $app->setEnvName('local');          // * 本地环境  .env.local
// $app->setEnvName('development');    // * 开发环境  .env.development
// $app->setEnvName('testing');        // * 测试环境  .env.testing
// $app->setEnvName('preview');        // * 预览环境  .env.preview
// $app->setEnvName('production');     // * 生产环境  .env.production
// 如果需要使用tp6 默认环境变量配置文件，注释不需要放开
// $app->setEnvName(''); // tp6 默认环境变量配置文件 .env

// require __DIR__ . '/app.php';



function run()
{
    // global $app;
    // 初始化应用
    $app = new App();

// 加载变量环境 .env 文件
    $app->loadEnv();

// 获取 变量配置文件 后缀  在 .env 文件中，
// 若没有 ENV_NAME 配置值 则默认后缀为 default  （.env.default）
    $envName = \think\facade\Env::get('ENV_NAME', 'default');

// 设置环境变量配置文件 动态
    $app->setEnvName($envName);
    
    ob_start();
    
    // 获取一个HTTP应用
    $http = $app->http;
    
    // 执行HTTP应用
    $response = $http->run();
    
    // 发送响应
    $response->send();
    
    // HTTP应用结束调度
    $http->end($response);
    
    return ob_get_clean();
}
